/* 
类型推断: TS会在没有明确的指定类型的时候推测出一个类型
    定义变量时赋值了, 推断为对应的类型
    定义变量时没有赋值, 推断为any类型
*/

(() => {
    let a = 3 // 推断为number类型
    // a = 'abc' // error

    let b // 推断为any类型
    b = 'abc'
    b = 123

    let c: boolean
    c = true
    // c = 'abc'

})()
